<?php 

namespace controladores;


use fcf\Controller as Controller,
	fcf\view as View,
	dao\usuariosDao as usuariosDao,
	dao\logsDao as logsDao,
	utils\Utils,
    utils\Sesiones;

class Usuarios extends Controller{

	var $usuariosDao;
	
	/*
	 * 
	 */
	function __construct(){
		$this->usuariosDao = new usuariosDao();
	}
	
	/*
	* Devuelve listado de todos los perfiles de usuario
	*/
	function listadoPerfilesUsuario(){
		echo json_encode($this->usuariosDao->perfilesUsuario());
	}	
	
	/*
	* Inserta nuevo usuario con la info recibida y devuelve resultado de la insercion
	*/
	function crearNuevoUsuario(){
		$info = Utils::getPost();
		$aux = new \stdClass();

		$aux->nom = $info->nom;
		$aux->usuario = $info->usuario;
		$aux->password = Utils::setPassword($info->password);
		$aux->email = $info->email;
		$aux->perfil_usuario = $info->perfil_usuario;
		$aux->intentos_fallidos = "0";
		$aux->activo = true;
		$insert = $this->usuariosDao->insertarNuevoUsuario($aux);
		echo json_encode($insert);
	}
	
	/*
	* Retorna el listado en json para la vista de gestion de usuarios
	*/
	function listarUsuariosGestion(){
		echo json_encode($this->usuariosDao->getUsuariosGestion());
	}
	
	/*
	* Devuelve en un json la informacion de un usuario buscado por id_usuario
	*/
	function listarUsuarioPorId(){
		echo json_encode($this->usuariosDao->getUsuarioPorId($_POST['id']));
	}
	
	/*
	 * 
	 */
	function updateUsuario(){
		$aux = Utils::getPost();
		//si el password esta modificado , encriptamos el string
		if($aux->info['edit_pass'] != "null"){ $aux->info['edit_pass'] = Utils::setPassword($aux->info['edit_pass']); }
		echo json_encode($this->usuariosDao->updateUsuario($aux->info));
	}
}

?>